package com.test.verify;

import net.sf.json.JSONObject;
import org.testng.annotations.Test;
import java.lang.String;
import java.lang.Object;

/**
 *如何获取接口返回的Jason字符串中指定Key的值，作为入参传给下一个接口
 */

public class GetJsonToKeyAndValue {

    String strObject="{'first':{'address':'中国上海','age':'23','name':'JSON'},'product':'123','skucode':'456'}";

    public String GetJasonValue(String Source,String Key,String subKey) {

        JSONObject object=JSONObject.fromObject(strObject);

        if(subKey!=null){
            if (object.containsKey(Key)){
                return object.getJSONObject(Key).getString(subKey);
            }else{
                return "接口返回值中不包含此key,请核实~";
            }

        }else{
            if (object.containsKey(Key)){
                return object.getString(Key);
            }else{
                return "接口返回值中不包含此key,请核实~";
            }
        }
    }

    @Test
    public void tt(){

        String strObject2="{'product':'123','skucode':null,'aa':'bb'}";
        JSONObject object=JSONObject.fromObject(strObject2);
        object.remove("product");
        System.out.println(object.toString());

//        String value=GetJasonValue(strObject,"first","address");
//        System.out.println(value);
//        String value2=GetJasonValue(strObject,"product",null);
//        System.out.println(value2);
          //JSONObject  jb= (JSONObject) json.get(i); //得到对象中的第i条记录
    }
}
